package cn.edu.wynu.d10_interface_jdk8;

public interface A {
    /**
     * 1、默认方法：必须使用default修饰，默认会被public修饰
     * 也称实例方法：对象的方法，必须使用实现类的对象来访问
     */
    public default void test1() {
        System.out.println("===默认方法===");
        test2(); // 私有方法在内部类中可以访问
    }

    /**
     * 2、私有方法：必须使用private修饰，私有方法只能被当前接口内部访问，不能被外部访问
     * （从jdk9 开始才支持使用）
     * 私有方法也是一种实例方法：对象的方法
     */
    private void test2(){
        System.out.println("===私有方法===");
    }

    /**
     * 3、静态方法：必须使用static修饰，默认会被public修饰
     * 属于类本身持有
     */
    static void test3(){ // 前面默认是public修饰
        System.out.println("===静态方法===");
    }

    /**
     * 为什么会新增这三个方法
     * 增强了接口的能力，更便于项目的扩展和维护。
     */
    void test4();
    void test5();
    default void test6(){
    }
}
